
/* 
1 页面加载的时候
  1 从缓存中获取购物车数据 渲染到页面中
    这些数据  checked=true 
2 微信支付
  1 哪些人 哪些帐号 可以实现微信支付
    1 企业帐号 
    2 企业帐号的小程序后台中 必须 给开发者 添加上白名单 
      1 一个 appid 可以同时绑定多个开发者
      2 这些开发者就可以公用这个appid 和 它的开发权限  
3 支付按钮
  1 先判断缓存中有没有token
  2 没有 跳转到授权页面 进行获取token 
  3 有token 。。。
  4 创建订单 获取订单编号
  5 已经完成了微信支付
  6 手动删除缓存中 已经被选中了的商品 
  7 删除后的购物车数据 填充回缓存
  8 再跳转页面 
 */
import regeneratorRuntime from '../../lib/runtime/runtime';
import { getAddList } from '../../request/module.js'
import { sendServer } from '../../request/common.js'
Page({
  data: {
    address: {},//默认地址,
    addList:[],
    // cartInfo:{},//商品信息、直接购买的时候
    cart: [],
    totalPrice: 0,
    totalNum: 0,
    // tempfilePath:'http://localhost:8080/img/',
    tempfilePath:'http://192.168.0.103:8080/img/',
    memo:'',
    isDetail:"",
  },
  onLoad(options){
    let cartInfo=JSON.parse(options.cartInfo)
    let allPrice=options.allPrice
    let isDetail=options.isDetail
   
    this.setData({
      cart:cartInfo,
      totalPrice:allPrice,
      isDetail:isDetail
    })
    console.log(this.data.cart)
    this.getAddList()//获取用户地址

  },
  onShow() {

    
  },
  toMoreAdd(){
    let addList=this.data.addList
    let address=this.data.address
    wx.navigateTo({
      url: '/pages/pay/moreAddress/index?id='+address.id
    })
  },
  getAddList(){
    getAddList().then((res)=>{
      let add=res.extend.addressList
      this.setData({
        addList:add
      })
      add.forEach(item=>{
        if(item.status==1){
          this.setData({
            address:add[0]
          })
        }
      })
      console.log(this.data.address)
    })
  },
  memoInput(options){
    let value=options.detail;
    this.setData({
      memo:value
    })
  },

  // 点击 支付 
  async handleOrderPay() {
    try {
      // 1 判断缓存中有没有token 
      const token = wx.getStorageSync("token");
      // 2 判断
      if (!token) {
        wx.navigateTo({
          url: '/pages/auth/index'
        });
        return;
      }
      // 3 创建订单
      // 3.1 准备 请求头参数
      // const header = { Authorization: token };
      // 3.2 准备 请求体参数
      if(this.nextTap){
        return;
      }
      this.nextTap=true;
      let that=this;
      setTimeout(()=>{
        that.nextTap=false;
      },1000)
      let params={},send={}
      var time=new Date().getTime()
      send.userId=wx.getStorageSync('userInfo').id
      send.addId=this.data.address.id;
      send.totalprice=this.data.totalPrice;
      send.deliverymethod='普通快递';
      send.createTime=time
      send.memo=this.data.memo;
      send.paymethod='',//默认为空，表示未选择付款方式
      send.status=0;//默认为0 表示未付款
      params.send=send;
      console.log(send)
      if(this.data.isDetail==1){
        let cartItem=this.data.cart[0]
        //商品图片，价格，数量，尺码，订单ID，这些是明细所需要的东西，
        let item=[]
        item[0]={};
        item[0].orderGoodsId=cartItem.goodsId;
        item[0].quantity=cartItem.quantity;
        item[0].goodsBuyPrice=cartItem.goods.sellPrice;
        item[0].size=cartItem.size
        params.url='order/cartToOrder?ids&item='+encodeURIComponent(JSON.stringify(item))
        sendServer(params,(commRes)=>{
          console.log(commRes)
          if(commRes.code==100){
            let orderId=commRes.extend.orderId
            wx.navigateTo({
              url: '/pages/pay/payDone/index?totalPrice='+send.totalprice+'&orderId='+orderId,
            })
          }
        })
      }else{
        let ids=[];
        this.data.cart.forEach(item=>{
          ids.push(item.id)
        })
        params.url='order/cartToOrder?ids='+ids
        sendServer(params,(commRes)=>{
          let orderId='';
          if(commRes.code==100){
            orderId=commRes.extend.orderId
            wx.navigateTo({
              url: '/pages/pay/payDone/index?totalPrice='+send.totalprice+'&orderId='+orderId,
            })
          }else{
            wx.showToast({
              title: '网络延迟，请稍后',
              icon:"success",
            })
          }
        })
      }

      
        
    } catch (error) {
      console.log(error);
    }
  }


})



